package com.yiyi.credit.manage.model.vo;

import com.yiyi.credit.manage.abutment.common.enums.PeriodUnitType;
import com.yiyi.credit.manage.abutment.common.utils.DateUtil;
import io.swagger.annotations.ApiParam;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;


public class SubstationTradeVO implements Serializable {

    @ApiParam("出借人登录名")
    private String investorLoginName;
    @ApiParam("出借时间")
    private Long investmentTime;
    @ApiParam("出借时间字符串")
    private String investmentTimeStr;
    @ApiParam("出借金额")
    private BigDecimal investmentAmount;
    @ApiParam("出借项目编号")
    private String projectNo;
    @ApiParam("所属站点")
    private Long substationId;
    @ApiParam("站点名称")
    private String substationName;
    @ApiParam("站点产品id")
    private Long subProductId;
    @ApiParam("站点产品名称")
    private String subProductName;
    @ApiParam("封闭期限")
    private Integer closePeriod;
    @ApiParam("封闭期限单位")
    private Integer closePeriodUnit;
    @ApiParam("封闭期限单位字符串")
    private String closePeriodUnitStr;
    @ApiParam("投资期限")
    private Integer investmentPeriod;
    @ApiParam("投资期限单位")
    private Integer investmentPeriodUnit;
    @ApiParam("投资期限单位字符串")
    private String investmentPeriodUnitStr;
    @ApiParam("红包金额")
    private BigDecimal redPacket;
    @ApiParam("实际再支付金额")
    private BigDecimal realPayment;
    @ApiParam("赎回时间")
    private Long redemptionTime;
    @ApiParam("赎回时间字符串")
    private String redemptionTimeStr;
    @ApiParam("集合标状态")
    private String mStatus;
    @ApiParam("散标状态")
    private String sStatus;
    @ApiParam("项目Id")
    private String projectId;
    @ApiParam("项目类型")
    private String projectType;
    @ApiParam("项目状态")
    private String projectStatus;

    public String getInvestorLoginName() {
        return investorLoginName;
    }

    public void setInvestorLoginName(String investorLoginName) {
        this.investorLoginName = investorLoginName;
    }

    public Long getInvestmentTime() {
        return investmentTime;
    }

    public void setInvestmentTime(Long investmentTime) {
        this.investmentTime = investmentTime;
        if (this.investmentTime != null) {
            this.setInvestmentTimeStr(DateUtil.format(new Date(this.investmentTime)));
        }
    }

    public String getInvestmentTimeStr() {
        return investmentTimeStr;
    }

    public void setInvestmentTimeStr(String investmentTimeStr) {
        this.investmentTimeStr = investmentTimeStr;
    }

    public BigDecimal getInvestmentAmount() {
        return investmentAmount;
    }

    public void setInvestmentAmount(BigDecimal investmentAmount) {
        this.investmentAmount = investmentAmount;
    }

    public String getProjectNo() {
        return projectNo;
    }

    public void setProjectNo(String projectNo) {
        this.projectNo = projectNo;
    }

    public Long getSubstationId() {
        return substationId;
    }

    public void setSubstationId(Long substationId) {
        this.substationId = substationId;
    }

    public String getSubstationName() {
        return substationName;
    }

    public void setSubstationName(String substationName) {
        this.substationName = substationName;
    }

    public Long getSubProductId() {
        return subProductId;
    }

    public void setSubProductId(Long subProductId) {
        this.subProductId = subProductId;
    }

    public String getSubProductName() {
        return subProductName;
    }

    public void setSubProductName(String subProductName) {
        this.subProductName = subProductName;
    }

    public Integer getClosePeriod() {
        return closePeriod;
    }

    public void setClosePeriod(Integer closePeriod) {
        this.closePeriod = closePeriod;
    }

    public Integer getClosePeriodUnit() {
        return closePeriodUnit;
    }

    public void setClosePeriodUnit(Integer closePeriodUnit) {
        this.closePeriodUnit = closePeriodUnit;
        if (this.closePeriodUnit != null) {
            this.setClosePeriodUnitStr(PeriodUnitType.getEnumByKey(this.closePeriodUnit).getValue());
        }
    }

    public String getClosePeriodUnitStr() {
        return closePeriodUnitStr;
    }

    public void setClosePeriodUnitStr(String closePeriodUnitStr) {
        this.closePeriodUnitStr = closePeriodUnitStr;
    }

    public BigDecimal getRedPacket() {
        return redPacket;
    }

    public void setRedPacket(BigDecimal redPacket) {
        this.redPacket = redPacket;
    }

    public BigDecimal getRealPayment() {
        return realPayment;
    }

    public void setRealPayment(BigDecimal realPayment) {
        this.realPayment = realPayment;
    }

    public Long getRedemptionTime() {
        return redemptionTime;
    }

    public void setRedemptionTime(Long redemptionTime) {
        this.redemptionTime = redemptionTime;
        if (this.redemptionTime != null) {
            this.setRedemptionTimeStr(DateUtil.format(new Date(this.redemptionTime)));
        }
    }

    public String getRedemptionTimeStr() {
        return redemptionTimeStr;
    }

    public void setRedemptionTimeStr(String redemptionTimeStr) {
        this.redemptionTimeStr = redemptionTimeStr;
    }

    public Integer getInvestmentPeriod() {
        return investmentPeriod;
    }

    public void setInvestmentPeriod(Integer investmentPeriod) {
        this.investmentPeriod = investmentPeriod;
    }

    public Integer getInvestmentPeriodUnit() {
        return investmentPeriodUnit;
    }

    public void setInvestmentPeriodUnit(Integer investmentPeriodUnit) {
        this.investmentPeriodUnit = investmentPeriodUnit;
        if (this.investmentPeriodUnit != null) {
            this.setInvestmentPeriodUnitStr(PeriodUnitType.getEnumByKey(this.investmentPeriodUnit).getValue());
        }
    }

    public String getInvestmentPeriodUnitStr() {
        return investmentPeriodUnitStr;
    }

    public void setInvestmentPeriodUnitStr(String investmentPeriodUnitStr) {
        this.investmentPeriodUnitStr = investmentPeriodUnitStr;
    }

    public String getmStatus() {
        return mStatus;
    }

    public void setmStatus(String mStatus) {
        this.mStatus = mStatus;
    }

    public String getsStatus() {
        return sStatus;
    }

    public void setsStatus(String sStatus) {
        this.sStatus = sStatus;
    }

    public String getProjectId() {
        return projectId;
    }

    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }

    public String getProjectType() {
        return projectType;
    }

    public void setProjectType(String projectType) {
        this.projectType = projectType;
    }

    public String getProjectStatus() {
        return projectStatus;
    }

    public void setProjectStatus(String projectStatus) {
        this.projectStatus = projectStatus;
    }
}
